上位机开发笔记
» 搜索 » user:admin post:true
Listview+plus+capture实现鼠标抓拍拖拽排序功能
以上代码还可以精简,不用gdip进行再次包装,可以直接使用pic.handle
所以可以将gdip.bitmap()注释掉...
//var bmp = gdip.bitmap(picture); winform.listview.plusA.setBackground(picture.Handle);实现的功能和上面的一样.
Listview+plus+capture实现鼠标抓拍拖拽排序功能
import win.ui;
/*DSG{{*/
var winform = win.form(text="listview拖拽排序功能演示";right=614;bottom=300;parent=...)
winform.add(
listview={cls="listview";left=26;top=23;right=575;bottom=274;bgcolor=16777215;db=1;dl=1;dr=1;dt=1;edge=1;fullRow=1;gridLines=1;msel=false;z=1}
)
admin •
2017-11-20 • 最后回复来自 admin
listbox+plus实现鼠标拖拽排序
import win.ui;
/*DSG{{*/
var winform = win.form(text="listbox实现鼠标拖拽排序功能";right=408;bottom=362;parent=...)
winform.add(
listbox={cls="listbox";left=15;top=12;right=398;bottom=337;bgcolor=16777215;db=1;dl=1;dr=1;dt=1;edge=1;font=LOGFONT(name='Verdana');hscroll=1;it
admin •
2017-11-20 • 最后回复来自 admin
treeview树形控件使用示例(感谢一鹤老大)
import win.ui;
/*DSG{{*/
var winform = win.form(text="树形控件启用复选框:试试勾选有子节点的节点";right=471;bottom=497)
winform.add(
treeview={cls="treeview";left=19;top=17;right=453;bottom=480;asel=false;bgcolor=15793151;chkBox=1;db=1;dl=1;dt=1;edge=1;hscroll=1;infoTip=1;nButton=1;v
admin •
2017-11-20
QQ2010~2017通用登录号码内存搜索示例
//QQ2010~2013通用登录号码内存搜索示例
import process
import console;
var qqNumber = {};
//遍历所有进程
for processEntry in process.each( "^QQ\.exe" ) {
prcs = process( processEntry.th32ProcessID )
console.log("发现QQ进程,正在搜索进程......",prcs.getPath() )
var qqTest =
admin •
2017-11-19
通过文件句柄,获得它的绝对路径方法
import winex; //导入外部窗口控制支持库
import process; //导入外部进程控制支持库
io.open() //打开控制台
process.execute("notepad.exe") //运行记事本
var hwnd = winex.waitActive( , ,"Notepad"); //等待记事本激活,并获取句柄
var tid,pid = win.getThreadProcessId(hwnd); //取线程ID
var prcs = process(pid); //打开进
admin •
2017-11-19 • 最后回复来自 admin
通过文件句柄,获得它的绝对路径方法
如题:
假如,打开了一个记事本,如何获取到这个记事本的句柄, 怎么能通过这个句柄得到这个文件的路径?
import process; import console import win; import winex; console.open(); hwnd = winex.find("","记事本"); console.dump(hwnd) tid,pid=win.getThreadProcessId(hwnd); console.log(tid,pid) path=process.ge鼠标指针图标样式一例
//鼠标指针函数演示
import win.ui;
import win.ui.menu;
import com.picture;
/*DSG{{*/
var winform = win.form(text="光标示例";right=349;bottom=249;parent=...)
winform.add(
button={cls="button";text="光标等待";left=110;top=114;right=229;bottom=155;z=2};
static={cls="static";text="ww
admin •
2017-11-19
原子窗体(互斥体,禁止重复运行窗体),非第一运行窗体实现原子窗体的方法
//原子窗体一例
/*
有时候进程需要禁止重复运行,但主窗体可能并不是最先启动的(例如登录界面、欢迎界面等等)
这时候就不方便在第一个窗体使用原子窗体禁止重复启动,可以改用 process.mutex 创建互斥体来禁止进程重复启动。
仍然可以通过原子窗体尝试查找主窗体,实现用户双击EXE激活已经启动的主窗体的效果。
*/
//创建互斥体
import process.mutex;
var mutex = process.mutex("互斥体.唯一标识")
if( mutex.conflict ){
impo
admin •
2017-11-19
给listview每行加上复选框
利用htmlayout实现listview的icon功能:
引用自:http://bbs.aardio.com/forum.php?mod=viewthread&tid=12662&highlight=listview
import win.ui; /*DSG{{*/ var winform = win.form( bottom=399;text="。。。。。";right=599 ) /*}}*/ import web.layout; import web.layout.be给listview每行加上复选框
listview加上复选框之后,如果只是两列,那么就是checkview了吧.
于是,去checkview里查看它实现的代码.
//checklist 复选列表框 import win.ui.ctrl.listview; namespace win.ui.ctrl; var listview = ..win.ui.ctrl.listview; class checklist{ ctor(parent,tParam){ if( tParam ){listview响应事件
_LVN_BEGINDRAG 鼠标左键正在被触发以便进行拖放操作(当鼠标左键开始拖拽列表视图控件中的项目时产生)
_LVN_BEGINRDRAG 鼠标右键正在被触发以便进行拖放操作(当鼠标右键开始拖拽列表视图控件中的项目时产生)
_LVN_BEGINLABELEDIT 开始编辑项的文本
_LVN_COLUMNCLICK 单击列(当鼠标单击列表视图控件列标题时产生)
_NM_CLICK 当鼠标单击列表视图控件时产生
_LVN_COLUMNCLICK 单击列
_LVN_DELETEALLITEMS 删除所有项
_LVN_DE
admin •
2017-11-19
(转)aardio防cc攻击的关键代码
最近有很无聊的人cc攻击aardio官方论坛,jacen一鹤重新写了个防攻击的库和思路.
这里学习下:
增加 inet.stat 用于列出网络连接, 例如列出所有80端口的TCP连接,并按连接数排序:import console; import inet.stat; console.dump(inet.stat(80).tcp) console.pause(true);今天晚上被某个无聊的家伙CC攻击,于是写了这个库, 昨天灌了上万个垃圾帖子,今天又(转)GDI实现桌面歌词效果
import win.ui;
/*DSG{{*/
var winform = win.form(text="歌词效果演示";right=339;bottom=141;border="none";exmode="toolwindow";mode="popup")
winform.add()
/*}}*/
import gdip;
drawAlphaText =function( strText,fontsize= 35,fontname="Verdana" ){
gdi.layeredBuffer( winform
admin •
2017-11-18
(转)htmlayout仿Picasa照片查看器效果
右上角的提示是乱码,要解决他,用
/*提示框样式*/ popup { font-family: '微软雅黑','宋体'; font-size: 12px; font-weight: normal; padding: 0 5px; }(转)htmlayout仿Picasa照片查看器效果
import win.ui;
/*DSG{{*/
var winform = win.form( text = "仿Picasa照片查看器效果";exmode="toolwindow" )
/*}}*/
winform.transparent(true);//启用分层窗口以支持透明
winform.fullscreen(true);//全屏
import web.layout;//导入内置浏览器引擎
import web.layout.behavior.windowCommand;//导入标题栏按钮支持库
wbLayo
admin •
2017-11-18 • 最后回复来自 admin
menu菜单增加图标方法
menu菜单栏增加图标的方法,
一般用到menu.add(...)即可,
var menuFile = win.ui.popmenu(winform);//创建弹出菜单 menuFile.add( "打开", function(id){ winform.msgbox("打开文件") } ) menuFile.add( text = "标题"; bitmap = "/toolbar.gif"; //bitmapCheckd = "选中位图句柄或路径、或图像数据,可选参数Toolbar工具条控件使用感受和用法分享
Toolbar工具条不知道能不能代替plus做成大按钮样式.....
它的style样式有好多种,下面记录下自己使用过程
import win.ui; import win.ui.toolbar; /*DSG{{*/ var winform = win.form(text="aardio form";right=597;bottom=365;bgcolor=65535) winform.add( picturebox={cls="picturebox";left=0;top=39;righ